/*
 * @File    :   login.js
 * @Time    :   2024/03/24 16:41:52
 * @Author  :   chakcy
 * @Email   :   947105045@qq.com
 * @description   :   登录模块
 */

const { Request, jwt } = require('../../../common')
const { token } = require('../../../config')

// 登录函数，用于向服务器发起登录请求
function login(event, arg) {
    // 发起登录请求
    Request.post('/login', {
        username: arg['username'],
        password: arg['password']
    }).then(response => {
        // 登录成功后设置服务器端和客户端的token
        token['serverToken'] = response.data["token"]
        const ipcToken = jwt.sign({ username: arg['username'] })
        token['ipcToken'] = ipcToken
        // 发送登录成功的消息
        event.sender.send('login-reply', {
            success: true,
            message: 'Login successful'
        })
    }).catch(error => {
        // 打印登录失败的错误信息，并发送登录失败的消息
        console.error('登录失败', error)
        event.sender.send('login-reply', {
            success: false,
            message: 'Login failed'
        })
    })
}

module.exports = {
    login
}